/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.1.1                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

convertToMeters 0.1;

vertices
(
//z=0
//inner circle
   (5 0 0) //0
   (3.535533906 3.535533906 0) //1
   (0 5 0) //2
   (-3.535533906 3.535533906 0) //3
   (-5 0 0) //4
   (-3.535533906 -3.535533906 0) //5
   (0 -5 0) //6
   (3.535533906 -3.535533906 0) //7

//outer circle
   (15 0 0) //8
   (10.60660172 10.60660172 0) //9
   (0 15 0) //10
   (-10.60660172 10.60660172 0) //11
   (-15 0 0) //12
   (-10.60660172 -10.60660172 0) //13
   (0 -15 0) //14
   (10.60660172 -10.60660172 0) //15

//rectangle
   (200 0 0) //16
   (200 10.60660172 0) //17
   (200 50 0) //18
   (10.60660172 50 0) //19
   (0 50 0) //20
   (-10.60660172 50 0) //21
   (-25 50 0) //22
   (-25 10.60660172 0) //23
   (-25 0 0) //24
   (-25 -10.60660172 0) //25
   (-25 -50 0) //26
   (-10.60660172 -50 0) //27
   (0 -50 0) //28
   (10.60660172 -50 0) //29
   (200 -50 0) //30
   (200 -10.60660172 0) //31


//z=1
//inner circle
   (5 0 1) //32
   (3.535533906 3.535533906 1) //33
   (0 5 1) //34
   (-3.535533906 3.535533906 1) //35
   (-5 0 1) //36
   (-3.535533906 -3.535533906 1) //37
   (0 -5 1) //38
   (3.535533906 -3.535533906 1) //39

//outer circle
   (15 0 1) //40
   (10.60660172 10.60660172 1) //41
   (0 15 1) //42
   (-10.60660172 10.60660172 1) //43
   (-15 0 1) //44
   (-10.60660172 -10.60660172 1) //45
   (0 -15 1) //46
   (10.60660172 -10.60660172 1) //47

//rectangle
   (200 0 1) //48
   (200 10.60660172 1) //49
   (200 50 1) //50
   (10.60660172 50 1) //51
   (0 50 1) //52
   (-10.60660172 50 1) //53
   (-25 50 1) //54
   (-25 10.60660172 1) //55
   (-25 0 1) //56
   (-25 -10.60660172 1) //57
   (-25 -50 1) //58
   (-10.60660172 -50 1) //59
   (0 -50 1) //60
   (10.60660172 -50 1) //61
   (200 -50 1) //62
   (200 -10.60660172 1) //63
);

blocks
(
    hex (1 0 8 9 33 32 40 41) (30 75 1) simpleGrading (1 8 1) //Block 0
    hex (2 1 9 10 34 33 41 42) (30 75 1) simpleGrading (1 8 1) //Block 1
    hex (3 2 10 11 35 34 42 43) (30 75 1) simpleGrading (1 8 1) //Block 2
    hex (4 3 11 12 36 35 43 44) (30 75 1) simpleGrading (1 8 1) //Block 3
    hex (5 4 12 13 37 36 44 45) (30 75 1) simpleGrading (1 8 1) //Block 4
    hex (6 5 13 14 38 37 45 46) (30 75 1) simpleGrading (1 8 1) //Block 5
    hex (7 6 14 15 39 38 46 47) (30 75 1) simpleGrading (1 8 1) //Block 6
    hex (0 7 15 8 32 39 47 40) (30 75 1) simpleGrading (1 8 1) //Block 7
    hex (8 16 17 9 40 48 49 41) (200 30 1) simpleGrading (2 1 1) //Block 8
    hex (9 17 18 19 41 49 50 51) (200 100 1) simpleGrading (2 2 1) //Block 9
    hex (10 9 19 20 42 41 51 52) (30 100 1) simpleGrading (1 2 1) //Block 10
    hex (11 10 20 21 43 42 52 53) (30 100 1) simpleGrading (1 2 1) //Block 11
    hex (23 11 21 22 55 43 53 54) (30 100 1) simpleGrading (1 2 1) //Block 12
    hex (24 12 11 23 56 44 43 55) (30 30 1) simpleGrading (1 1 1) //Block 13
    hex (25 13 12 24 57 45 44 56) (30 30 1) simpleGrading (1 1 1) //Block 14
    hex (26 27 13 25 58 59 45 57) (30 100 1) simpleGrading (1 0.5 1) //Block 15
    hex (27 28 14 13 59 60 46 45) (30 100 1) simpleGrading (1 0.5 1) //Block 16
    hex (28 29 15 14 60 61 47 46) (30 100 1) simpleGrading (1 0.5 1) //Block 17
    hex (29 30 31 15 61 62 63 47) (200 100 1) simpleGrading (2 0.5 1) //Block 18
    hex (15 31 16 8 47 63 48 40) (200 30 1) simpleGrading (2 1 1) //Block 19
);

edges
(
    //inner cylinder surface
    arc 0  1  (4 3 0) 
    arc 32 33 (4 3 1) 

    arc 1  2  (3 4 0) 
    arc 33 34 (3 4 1) 

    arc 2  3  (-3 4 0) 
    arc 34 35 (-3 4 1) 

    arc 3  4  (-4 3 0) 
    arc 35 36 (-4 3 1)

    arc 4 5 (-4 -3 0)
    arc 36 37 (-4 -3 1)

    arc 5 6 (-3 -4 0)
    arc 37 38 (-3 -4 1)

    arc 6 7  (3 -4 0) 
    arc 38 39 (3 -4 1) 

    arc 7 0  (4 -3 0) 
    arc 39 32 (4 -3 1)

    //outer cylinder surface
    arc 8  9  (12 9 0) 
    arc 40 41 (12 9 1) 

    arc 9 10  (9 12 0) 
    arc 41 42 (9 12 1) 

    arc 10 11  (-9 12 0) 
    arc 42 43 (-9 12 1) 

    arc 11 12  (-12 9 0) 
    arc 43 44 (-12 9 1)

    arc 12 13 (-12 -9 0)
    arc 44 45 (-12 -9 1)

    arc 13 14 (-9 -12 0)
    arc 45 46 (-9 -12 1)

    arc 14 15  (9 -12 0) 
    arc 46 47 (9 -12 1) 

    arc 15 8  (12 -9 0) 
    arc 47 40 (12 -9 1)

);

boundary
(
    inlet
    {
        type patch;
        faces
        (
          (22 23 55 54)
          (23 24 56 55)
          (24 25 57 56)
          (25 26 58 57)
        );
    }

    outlet
    {
        type patch;
        faces
        (
          (30 31 63 62)
          (31 16 48 63)
          (16 17 49 48)
          (17 18 50 49)
        );
    }
   
    topAndBottom
    {
        type patch;
        faces
        (
          (18 19 51 50)
          (19 20 52 51)
          (20 21 53 52)
          (21 22 54 53)

          (26 27 59 58)
          (27 28 60 59)
          (28 29 61 60)
          (29 30 62 61)
        ); 
    }
    

    cylinder
    {
        type wall;
        faces
        (
          (1 0 32 33)
          (2 1 33 34)
          (3 2 34 35)
          (4 3 35 36)
          (5 4 36 37)
          (6 5 37 38)
          (7 6 38 39)
          (0 7 39 32)
        );
    }

    frontAndBack
    {
        type empty;
        faces
        (
//circular faces
          (0 1 9 8)
          (32 40 41 33)

          (1 2 10 9)
          (33 41 42 34)

          (2 3 11 10)
          (34 42 43 35)

          (3 4 12 11)
          (35 43 44 36)

          (4 5 13 12)
          (36 44 45 37)

          (5 6 14 13)
          (37 45 46 38)

          (6 7 15 14)
          (38 46 47 39)

          (7 0 8 15)
          (39 47 40 32)

//rectangular faces
          (8 9 17 16)
          (40 48 49 41)

          (9 19 18 17)
          (41 49 50 51)

          (9 10 20 19)
          (41 51 52 42)

          (10 11 21 20)
          (42 52 53 43)

          (11 23 22 21)
          (43 53 54 55)

          (11 12 24 23)
          (43 55 56 44)

          (12 13 25 24)
          (44 56 57 45)

          (13 27 26 25)
          (45 57 58 59)

          (13 14 28 27)
          (45 59 60 46)

          (14 15 29 28)
          (46 60 61 47)

          (15 31 30 29)
          (47 61 62 63)

          (15 8 16 31)
          (47 63 48 40)
        );
    }
);

mergePatchPairs
(
);

// ************************************************************************* //
